<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Egresos
 *
 * @author Ivan
 */
class consumo extends CI_Model{
    //put your code here
    var $id;
    var $id_reserva;
    var $id_servicio;
    var $id_habitacion;
    var $fecha;
    var $precio;
    var $observacion;
    var $anulado;
    var $fecha_usuario;
    var $id_usuario;
    
function __construct()
    {
        parent::__construct();
    }
    
    function nuevo()
    {
        $usua=$this->session->userdata('usuario');
        $sql_res="INSERT INTO t_detalle_reserva_servicio (id_reserva,id_servicio, id_habitacion,fecha,precio, observacion,anulado, fecha_usuario, id_usuario) 
                   values('".$_POST["id_reserva"]."','".$_POST["id_servicio"]."','".$_POST["id_habitacion"]."','".$_POST["fecha"]."','".str_replace (",",".",$_POST['precio'])."','".$_POST["observacion"]."',0,NOW(),'".$usua."')"; 
      
        
        $this->db->trans_start();
        $this->db->query($sql_res);
        $this->db->trans_complete(); 
        if($this->db->trans_status() == FALSE)
        {
            show_error('Error en la insercion. CODIGO: ' . $this->db->_error_message());
        }else{
            header('Location: ' . base_url() . 'creserva'); 
        }
    }
    
     
    
    function listarTodos($id,$idreserva)
    {
        $this->db->select('t_detalle_reserva_servicio.*,t_detalle_reserva_servicio.fecha_usuario as fecusuario,t_detalle_reserva_servicio.id_servicio,t_habitaciones.nombre as habitacion, CONCAT(t_clientes.apellido," ",t_clientes.nombre) as apellido,t_tipo_servicio.nombre as tipos',FALSE);
        $this->db->from('t_detalle_reserva_servicio');
        $this->db->join('t_tipo_servicio', 't_detalle_reserva_servicio.id_servicio = t_tipo_servicio.id');
        $this->db->join('t_habitaciones', 't_detalle_reserva_servicio.id_habitacion = t_habitaciones.id');
        $this->db->join('t_reservas', 't_detalle_reserva_servicio.id_reserva = t_reservas.id');
        $this->db->join('t_clientes', 't_reservas.id_cliente = t_clientes.id');
        $this->db->where('t_detalle_reserva_servicio.anulado', 0);
        $this->db->order_by('fecha','ASC');
        if ($id>0){
            $this->db->where('t_detalle_reserva_servicio.id', $id);
            $consumo = $this->db->get();
            return $consumo->first_row();
        }
        if ($idreserva>0){
            $this->db->where('t_detalle_reserva_servicio.id_reserva', $idreserva);
            $consumo = $this->db->get();
            return $consumo->result();
        }
        
        if($id==0 and $idreserva==0){
            $consumo = $this->db->get();
            return $consumo->result();
        }
        

    }
    
    
     function buscarConsumos($mostrar,$todos,$habitacion="",$pasajero="",$desde="",$hasta="", $limite,$principio)
    { 
        $this->db->select('t_detalle_reserva_servicio.*,t_detalle_reserva_servicio.fecha_usuario as fecusuario,t_detalle_reserva_servicio.id_servicio,t_habitaciones.nombre as habitacion, CONCAT(t_clientes.apellido," ",t_clientes.nombre) as pasajero,t_tipo_servicio.nombre as tipos',FALSE);
        $this->db->from('t_detalle_reserva_servicio');
        $this->db->join('t_tipo_servicio', 't_detalle_reserva_servicio.id_servicio = t_tipo_servicio.id');
        $this->db->join('t_habitaciones', 't_detalle_reserva_servicio.id_habitacion = t_habitaciones.id');
        $this->db->join('t_reservas', 't_detalle_reserva_servicio.id_reserva = t_reservas.id');
        $this->db->join('t_clientes', 't_reservas.id_cliente = t_clientes.id');
        $this->db->where('t_detalle_reserva_servicio.anulado', 0);
        $this->db->order_by('fecha','ASC');
           if($todos == 1)
           {
               $this->db->where('t_detalle_reserva_servicio.anulado', 0);
           }else
           {
               $this->db->where('t_detalle_reserva_servicio.anulado', 0);
               if($habitacion!=""){
                   $this->db->like('t_habitaciones.nombre', rtrim($habitacion),$limite,$principio);
                }
               if($pasajero!=""){
                   $this->db->like('t_clientes.apellido', rtrim($pasajero),$limite,$principio);
                }
                if($desde!="" and $hasta!=""){
                    $this->db->where('fecha >=',$desde,$limite,$principio);
                    $this->db->where('fecha <=',$hasta,$limite,$principio);
                }
               
           }    
        $consumo = $this->db->get();
        return $consumo->result();
        
    }
     
    
     function getConsumo($id){
        $consumo = $this->db->get_where('t_detalle_reserva_servicio', array('id'=> $id));
        return $consumo->first_row();
                
    }
    
    function getTipos($id)
    {
        
        $this->db->select('select id,nombre from t_tipo_servicio');
        $this->db->from(t_tipo_servicio);
        $this->db->where('eliminado',0);
        if ($id>0)
        {
            $this->db->where('id',$id);
        }
        return $tipoconsumo->result();
     }
    
    function getConsumos($id_reserva,$id_habitacion){
        if ($id_habitacion>0){
            $consumo = $this->db->get_where('t_detalle_reserva_servicio', array('id_habitacion'=> $id_habitacion));
        }
        if ($id_reserva>0){
            $consumo = $this->db->get_where('t_detalle_reserva_servicio', array('id_reserva'=> $id_reserva));
        }
        
        return $consumo->first_row();
                
    }
    
    
    function modificar($id){
       
        
            $datos = array(
                   'id_reserva' => $_POST['id_reserva'],
                    'id_servicio' => $_POST['id_servicio'],
                    'id_habitacion' => $_POST['id_habitacion'],
                    'fecha' => $_POST['fecha'],
                    'precio' => $_POST['precio'],
                    'observacion' => $_POST['observacion'],
                    'fecha_usuario' =>date('Y-m-d H:i:s'),
                    'id_usuario' => $this->session->userdata('usuario') 
            );
            

            
            
            $this->db->trans_start();
            $this->db->where('id',$id);
            $this->db->update('t_detalle_reserva_servicio',$datos);
            $this->db->trans_complete(); 
            if($this->db->trans_status() == FALSE)
            {
                show_error('Error en la insercion. CODIGO: ' . $this->db->_error_message());
            }else{
                header('Location: ' . base_url() . 'cconsumo/consultar'); 
            }    
        
    }
    
    function eliminar($id)
    {
        $this->db->trans_start();
        $this->db->where('id',$id);
        $datos = array('anulado'=>1);
        $this->db->update('t_detalle_reserva_servicio',$datos);
        $this->db->trans_complete(); 
        if($this->db->trans_status() == FALSE)
        {
            show_error('Error de baja. CODIGO: ' . $this->db->_error_message());
        }else{
            header('Location: ' . base_url() . 'cconsumo/consultar'); 
        }
    }
    
}

?>